﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using ClassLibrary.EFDbContext;
using ClassLibrary.Models;

namespace ConsoleApp2
{
    class Program
    {
        static void Main(string[] args)
        {
            using (var context = new Context())
            {
                //创建数据库  如果数据库不存在，则调用EF内置的API创建数据库
                if (context.Database.CreateIfNotExists())
                {
                    Console.WriteLine("数据库创建成功!");
                }
                else
                {
                    Console.WriteLine("数据库已存在");
                }
                //添加数据
                var cate = new List<Category> {
                   new Category{
                    CategoryName="文学类",
                    Grade="15",
                    ProductList=new List<Product>{
                          new Product
                   {
                     ProductName="百年孤独",
                     Price=37.53m,
                     PublicDate=new DateTime(2011,6,1)

                   },
                     new Product
                   {
                     ProductName="老人与海",
                     Price=37.53m,
                     PublicDate=new DateTime(2010,6,1)

                   }
                      }
                   },
                    new Category{
                    CategoryName="计算机类",
                    Grade="20",
                    ProductList=new List<Product>{
                          new Product
                   {
                    ProductName="C#高级编程第九版",
                     Price=48.23m,
                     PublicDate=new DateTime(2016,2,8)
                   },
                    new Product
                   {
                     ProductName="Oracle从入门到精通",
                     Price=27.03m,
                     PublicDate=new DateTime(2014,7,9)
                   }
                      }
                   }

                };

                //将创建的集合添加到上下文中
                context.Categorys.AddRange(cate);
                //调用SaveChanges()方法，将数据插入到数据库
                if (context.SaveChanges() > 0) {
                    Console.WriteLine("添加成功");
                } 

                Console.ReadKey();
            }
        }
    }
}

